/*	talmud - The TALMUD roguelike
 * Copyright (C) 2012, talmud contributors
 *
 *  This program is free software; you can redistribute it and/or modify it
 *  under the terms of Version 2 of the GNU General Public License as published
 *  by the Free Software Foundation.
 *
 *  This program is distributed in the hope that it will be useful, but WITHOUT
 *  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 *  FITNESS FOR A PARTICULAR PURPOSE. See Version 2 of the GNU General Public
 *  License for more details.
 *
 *  You should have received a copy of the GNU General Public License along
 *  with this program; if not, write to the Free Software Foundation, Inc.,
 *  59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
 */

#include <stdio.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "race.h"
#include "draw.h"

const racedef_t RACEDEFS[R_COUNT] = {
	{ "human", "the human",
		'@', A_WHITE,
		F_NEVER,
		1,	// Grp
		4,	// Diff
		0,	// MR
		14,	// AC
		8,	// HP
		I_NONE,	// Resist
		1,	// AtkCount
		{ A_HIT, ATK_NONE },	// AtkType
		{ 0, 0 },	// ToHit
		{ 1, 0 },	// HDCount
		{ 6, 0 },	// HD
		10,	// Speed
	},

	{ "elf", "the elf",
		'@', A_INTENSE | A_GREEN,
		F_NEVER,
		1,	// Grp
		4,	// Diff
		3,	// MR
		10,	// AC
		6,	// HP
		I_NONE,	// Resist
		1,	// AtkCount
		{ A_HIT, ATK_NONE },	// AtkType
		{ 0, 0 },	// ToHit
		{ 1, 0 },	// HDCount
		{ 6, 0 },	// HD
		10,	// Speed
	},

	{ "orc", "the orc",
		'@',
#if _16COLOR
		A_INTENSE | A_BLACK,
#else
		A_RED,
#endif
		F_UNUSUAL,
		3,	// Grp
		5,	// Diff
		1,	// MR
		14,	// AC
		8,	// HP
		IM(I_FIRE),	// Resist
		1,	// AtkCount
		{ A_HIT, ATK_NONE },	// AtkType
		{ 0, 0 },	// ToHit
		{ 1, 0 },	// HDCount
		{ 6, 0 },	// HD
		10,	// Speed
	},

	{ "hobbit", "the hobbit",
		'h', A_GREEN,
		F_UNUSUAL,
		1,	// Grp
		1,	// Diff
		0,	// MR
		4,	// AC
		3,	// HP
		I_NONE,	// Resist
		1,	// AtkCount
		{ A_HIT, ATK_NONE },	// AtkType
		{ 0, 0 },	// ToHit
		{ 1, 0 },	// HDCount
		{ 3, 0 },	// HD
		9,	// Speed
	},

	{ "gnome", "the gnome",
		'h', A_YELLOW,
		F_NORMAL,
		1,	// Grp
		1,	// Diff
		0,	// MR
		6,	// AC
		3,	// HP
		I_NONE,	// Resist
		1,	// AtkCount
		{ A_HIT, ATK_NONE },	// AtkType
		{ 0, 0 },	// ToHit
		{ 1, 0 },	// HDCount
		{ 4, 0 },	// HD
		9,	// Speed
	},

	{ "pebble golem", "the pebble golem",
		'G', A_WHITE,
		F_UNUSUAL,
		1,	// Grp
		2,	// Diff
		8,	// MR
		10,	// AC
		4,	// HP
		I_NONE,	// Resist
		1,	// AtkCount
		{ A_HIT, ATK_NONE },	// AtkType
		{ 0, 0 },	// ToHit
		{ 1, 0 },	// HDCount
		{ 6, 0 },	// HD
		8,	// Speed
	},

	{ "stone golem", "the stone golem",
		'G', A_WHITE,
		F_UNUSUAL,
		1,	// Grp
		5,	// Diff
		8,	// MR
		14,	// AC
		8,	// HP
		I_NONE,	// Resist
		1,	// AtkCount
		{ A_HIT, ATK_NONE },	// AtkType
		{ 0, 0 },	// ToHit
		{ 2, 0 },	// HDCount
		{ 6, 0 },	// HD
		8,	// Speed
	},

	{ "rock golem", "the rock golem",
		'G', A_WHITE,
		F_UNUSUAL,
		1,	// Grp
		10,	// Diff
		8,	// MR
		18,	// AC
		14,	// HP
		I_NONE,	// Resist
		1,	// AtkCount
		{ A_HIT, ATK_NONE },	// AtkType
		{ 0, 0 },	// ToHit
		{ 3, 0 },	// HDCount
		{ 6, 0 },	// HD
		8,	// Speed
	},

	{ "mountain golem", "the mountain golem",
		'G', A_WHITE,
		F_RARE,
		1,	// Grp
		15,	// Diff
		8,	// MR
		22,	// AC
		24,	// HP
		I_NONE,	// Resist
		2,	// AtkCount
		{ A_HIT, A_KICK },	// AtkType
		{ 0, 0 },	// ToHit
		{ 3, 2 },	// HDCount
		{ 6, 4 },	// HD
		10,	// Speed
	},

	{ "imp", "the imp",
		'&', A_RED,
		F_UNUSUAL,
		3,	// Grp
		5,	// Diff
		5,	// MR
		12,	// AC
		6,	// HP
		IM(I_FIRE),	// Resist
		2,	// AtkCount
		{ A_HIT, A_BITE },	// AtkType
		{ 0, 0 },	// ToHit
		{ 1, 1 },	// HDCount
		{ 6, 4 },	// HD
		10,	// Speed
	},

	{ "goblin", "the goblin",
		'@',
#if _16COLOR
		A_INTENSE | A_BLACK,
#else
		A_RED,
#endif
		F_COMMON,
		3,	// Grp
		2,	// Diff
		0,	// MR
		8,	// AC
		3,	// HP
		I_NONE,	// Resist
		1,	// AtkCount
		{ A_HIT, ATK_NONE },	// AtkType
		{ 0, 0 },	// ToHit
		{ 1, 0 },	// HDCount
		{ 3, 0 },	// HD
		10,	// Speed
	},

	{ "minotaur", "the minotaur",
		'B', A_YELLOW,
		F_RARE,
		1,	// Grp
		18,	// Diff
		0,	// MR
		25,	// AC
		20,	// HP
		I_NONE,	// Resist
		2,	// AtkCount
		{ A_HIT, A_KICK },	// AtkType
		{ 1, 0 },	// ToHit
		{ 3, 2 },	// HDCount
		{ 6, 8 },	// HD
		14,	// Speed
	},

	{ "gargoyle", "the gargoyle",
		'g',
#ifdef _16COLOR
		A_INTENSE | A_BLACK,
#else
		A_BLUE,
#endif
		F_UNUSUAL,
		1,	// Grp
		12,	// Diff
		0,	// MR
		19,	// AC
		18,	// HP
		I_NONE,	// Resist
		2,	// AtkCount
		{ A_HIT, A_HIT },	// AtkType
		{ 0, 0 },	// ToHit
		{ 2, 2 },	// HDCount
		{ 6, 4 },	// HD
		12,	// Speed
	},

	{ "centaur", "the centaur",
		'B', A_GREEN,
		F_NORMAL,
		3,	// Grp
		8,	// Diff
		0,	// MR
		16,	// AC
		10,	// HP
		IM(I_POISON),	// Resist
		2,	// AtkCount
		{ A_HIT, A_KICK },	// AtkType
		{ 0, 0 },	// ToHit
		{ 1, 2 },	// HDCount
		{ 6, 6 },	// HD
		14,	// Speed
	},

	{ "lich", "the lich",
		'L', A_MAGENTA,
		F_RARE,
		1,	// Grp
		16,	// Diff
		8,	// MR
		12,	// AC
		20,	// HP
		IM(I_POISON),	// Resist
		2,	// AtkCount
		{ A_HIT, A_SPELL },	// AtkType
		{ 0, -1 },	// ToHit
		{ 3, S_CURSE },	// HDCount
		{ 8, 0 },	// HD
		10,	// Speed
	},

	{ "The Acolyte", "The Acolyte",
		'@', A_INTENSE | A_MAGENTA,
		F_NEVER,
		1,	// Grp
		30,	// Diff
		7,	// MR
		16,	// AC
		80,	// HP
		I_NONE,	// Resist
		1,	// AtkCount
		{ A_HIT, A_NONE },	// AtkType
		{ 5, 0 },	// ToHit
		{ 4, 0 },	// HDCount
		{ 10, 0 },	// HD
		12,	// Speed
	},

	{ "Alistar", "Alistar",
		'&',
#ifdef _16COLOR
		A_INTENSE | A_BLACK,
#else
		A_RED,
#endif
		F_NEVER,
		1,	// Grp
		30,	// Diff
		10,	// MR
		16,	// AC
		120,	// HP
		IM(I_FIRE) | IM(I_COLD) | IM(I_POISON),	// Resist
		2,	// AtkCount
		{ A_HIT, A_HIT },	// AtkType
		{ 3, 4 },	// ToHit
		{ 4, 3 },	// HDCount
		{ 6, 8 },	// HD
		16,	// Speed
	},

	{ "skeleton", "the skeleton",
		'U', A_INTENSE | A_WHITE,
		F_RARE,
		3,	// Grp
		3,	// Diff
		8,	// MR
		10,	// AC
		1,	// HP
		IM(I_POISON),	// Resist
		1,	// AtkCount
		{ A_HIT, A_NONE },	// AtkType
		{ -2, 0 },	// ToHit
		{ 1, 0 },	// HDCount
		{ 3, 0 },	// HD
		10,
	},

	{ "dire skeleton", "the dire skeleton",
		'U', A_INTENSE | A_WHITE,
		F_RARE,
		2,	// Grp
		8,	// Diff
		9,	// MR
		17,	// AC
		19,	// HP
		IM(I_POISON),	// Resist
		1,	// AtkCount
		{ A_HIT, A_NONE },	// AtkType
		{ 0, 0 },	// ToHit
		{ 3, 0 },	// HDCount
		{ 8, 0 },	// HD
		12,
	},

	{ "hobbit skeleton", "the hobbit skeleton",
		'U', A_INTENSE | A_GREEN,
		F_UNUSUAL,
		3,	// Grp
		1,	// Diff
		0,	// MR
		4,	// AC
		1,	// HP
		IM(I_POISON),	// Resist
		1,	// AtkCount
		{ A_HIT, ATK_NONE },	// AtkType
		{ 0, 0 },	// ToHit
		{ 1, 0 },	// HDCount
		{ 2, 0 },	// HD
		9,	// Speed
	},

	{ "vampire", "the vampire",
		'V', A_BLUE,
		F_UNUSUAL,
		1,	// Grp
		10,	// Diff
		6,	// MR
		7,	// AC
		14,	// HP
		IM(I_SLEEP),	// Resist
		2,	// AtkCount
		{ A_HIT, A_BITE },	// AtkType
		{ 0, -1 },	// ToHit
		{ 2, 2 },	// HDCount
		{ 8, 6 },	// HD
		16,	// Speed
	},
};

const char * const INTRINSNAME[I_INTRINSCOUNT] = {
	"Null",
	"Fire",
	"Cold",
	"Shock",
	"Acid",
	"Poison",
	"Meta",
	"Holy",
	"Sleep",
	"Invis",
	"Infravis",
	"Para",
	"Conf",
};
